package test;

import benchmark.internal.BenchmarkN;
import benchmark.objects.A;
import benchmark.objects.B;

public class Ivk {

	private void assign(A x, A y) {
		x.f = y.f;
	}

	// private void tstIvk() {
	// BenchmarkN.alloc(1);
	// B b = new B();
	// BenchmarkN.alloc(2);
	// A a = new A(b);

	// BenchmarkN.test(1, a.f);
	// }

	// private void tstIvk2(B _b) {
	// BenchmarkN.alloc(3);
	// B b = _b;
	// // BenchmarkN.test(1, a.f);
	// }

	public static void main(String[] args) {

		Ivk ivk = new Ivk();

		BenchmarkN.alloc(1);
		A a1 = new A();
		BenchmarkN.alloc(2);
		A a2 = new A();
		BenchmarkN.alloc(3);
		a1.f = new B();
		BenchmarkN.alloc(4);
		a2.f = new B();

		ivk.assign(a1, a2);
		BenchmarkN.test(1, a1.f);

	}

}
